package com.atguigu.jinx.service;

import com.atguigu.jinx.entity.dto.User;
import com.atguigu.jinx.entity.vo.ChangePersonalVO;
import com.atguigu.jinx.entity.vo.NicknameAndPictureVO;
import com.atguigu.jinx.entity.vo.SuggestionVO;
import com.atguigu.jinx.entity.vo.UserDisplayInfoVO;
import com.baomidou.mybatisplus.extension.service.IService;
import org.springframework.web.multipart.MultipartFile;

import java.io.IOException;

/**
 * <p>
 * 服务类
 * </p>
 *
 * @author steve
 * @since 2025-08-07
 */
public interface IUserService extends IService<User> {

    /**
     * 获取用户的昵称和图片信息
     *
     * @return
     */
    NicknameAndPictureVO getNicknameAndPicture();

    /**
     * 提点建议
     *
     * @param suggestionVO
     * @return
     */
    boolean suggestion(SuggestionVO suggestionVO);

    /**
     * 展示用户的个人信息
     * @return 用户个人信息
     */
    UserDisplayInfoVO displayPersonalInfo();

    /**
     * 修改用户的个人信息
     * @param changePersonalVO c
     * @return result
     */
    boolean changePersonalInfo(ChangePersonalVO changePersonalVO);

    /**
     * 上传图片到腾讯云
     * @param file  上传的图片文件
     * @return 1.格式存在问题,返回错误结果 2.给一个正确的url
     * @throws IOException
     */
    String uploadPicToStorage(MultipartFile file) throws IOException;
}
